To achieve better performance in a conventional digital communication system employing channel coding, decoder inputs are implemented as variables that reflect the reliability of the received data. This is sometimes referred to as soft decoding. Another type of decoding, sometimes referred to as hard decoding, uses only the sign of the received coded symbol as an input. To provide such a soft input to a decoder, the received coded symbol is usually quantized to be represented with a certain number of bits. The more bits used, the higher the quantization accuracy. However, implementing more bits uses more resources to store and process the additional bits.
Conventional coded systems also implement interleaving to improve error rate performance, especially in fading channels. The interleaved data is the soft value after demodulation. The size of the interleaver memory is determined by the coded symbol frame size and the bit-width of each soft symbol. For a higher data rate, the size can be significant in the overall receiver cost consideration.
A common configuration for a digital receiver is that the demodulator output is quantized into certain number bits (e.g., n). The whole frame of the coded symbols, each represented by the n bits, are stored into the deinterleaver memory. The deinterleaver reads the data out in a different order and feeds the data to a channel code decoder. The parameter n controls the size of the deinterleaver and the input bit-width of the decoder. Decreasing the parameter n reduces the size of the deinterleaver and decoder, but tends to degrade the decoding performance.
It would be desirable to implement a system that uses multi-stage quantization and/or scaling to decrease overhead and improve performance compared to conventional approaches.